package com.neusoft.neuhealth.service;

import com.neusoft.neuhealth.domain.NursingRecord;
import com.neusoft.neuhealth.po.Result;
import com.neusoft.neuhealth.po.nursing.params.*;
import com.neusoft.neuhealth.po.nursing.result.*;

import java.util.List;

public interface INursingService {
    Result<LevelListResult> getNursingLevelList(LevelListParams params);

    Result addLevel(LevelParams params);

    Result updateLevel(LevelParams params);

    Result<ItemListResult> getNursingItemList(ItemListParams params);

    Result<ItemListResult> getNursingItemListByNursingLevelId(LevelItemListParams params);

    Result removeLevelItem(LevelItemParams params);

    Result addLevelItem(LevelItemParams params);

    Result deleteItem(Long id);

    Result addItem(ItemAddParams params);

    Result updateItem(ItemParams params);

    Result<List<ItemRecordResult>> getCustomerItems(Long customerId);

    Result addCustomerItemRecords(AddItemRecordsParams params);

    Result removeCustomerItemRecords(AddItemRecordsParams params);

    Result<NursingRecordListResult> getCustomerItemRecords(NursingRecordListParams customerId);

    Result removeRecord(NursingRecord record);

    Result removeCustomerItem(Long itemId);

    Result renew(RenewParams params);

    Result<ItemListResult> customerLevelItemList(CustomerLevelItemListParams params);

    Result addRecord(NursingRecordParam record, String token);

    Result saveLevelItems(LevelItemsParams params);
}
